﻿using System.ComponentModel;

namespace BodaNetCommunications.Utilities.ComTypes
{
    public enum FunctionCodeEnum
    {
        /// <summary>
        /// 读取线圈寄存器
        /// 读写: 读写
        /// 地址: 00001-09999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 位操作
        /// 操作数量: 单个或多个
        /// </summary>
        [Description("读取线圈寄存器")]
        FC01H,

        /// <summary>
        /// 读离散输入寄存器
        /// 读写: 只读
        /// 地址: 10001-19999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 位操作
        /// 操作数量: 单个或多个
        /// </summary>
        [Description("读离散输入寄存器")]
        FC02H,

        /// <summary>
        /// 读保持寄存器
        /// 读写: 只读
        /// 地址: 30001-39999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 字操作
        /// 操作数量: 单个或多个
        /// </summary>
        [Description("读保持寄存器")]
        FC03H,

        /// <summary>
        /// 读输入寄存器
        /// 读写: 读写
        /// 地址: 40001-49999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 字操作
        /// 操作数量: 单个或多个
        /// </summary>
        [Description("读输入寄存器")]
        FC04H,

        /// <summary>
        /// 写单个线圈寄存器
        /// 地址: 00001-09999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 位操作
        /// 操作数量: 单个
        /// </summary>
        [Description("写单个线圈寄存器")]
        FC05H,

        /// <summary>
        /// 写单个保持寄存器
        /// 地址: 40001-49999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 字操作
        /// 操作数量: 单个
        /// </summary>
        [Description("写单个保持寄存器")]
        FC06H,

        /// <summary>
        /// 写多个线圈寄存器
        /// 地址: 00001-09999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 位操作
        /// 操作数量: 多个
        /// </summary>
        [Description("写多个线圈寄存器")]
        FC0FH,

        /// <summary>
        /// 写多个保持寄存器
        /// 地址: 40001-49999 
        /// 寄存器: 0000H-FFFFH
        /// 位/字操作: 字操作
        /// 操作数量: 多个
        /// </summary>
        [Description("写多个保持寄存器")]
        FC10H,
    }

}
